home *** CD-ROM | disk | FTP | other *** search
/ InterCD 2000 December / december_2000.iso / Intercd / root / Mail / ^MailShield / setup.exe / data1.cab / Default_Rule_Files / config.mml < prev    next >
Encoding:
Text File  |  2000-10-18  |  10.7 KB  |  311 lines

  1. ###########################################################################
  2. #
  3. # MailShield Main Configuration file
  4. #
  5. # This file sets the generic parameters for MailShield, and is loaded
  6. # once when MailShield starts up.
  7. #
  8. # You MUST set the following: SMTP SERVER, DNS SERVERS
  9. #
  10. # We also recommend that you set these: LOCAL DOMAIN NAMES 
  11. #    HOSTNAMES TO ALLOW RELAYING, TCP/IP ADDRESSES TO ALLOW RELAYING
  12. #
  13. # The other settings effect how how the various filters work, and are
  14. # optional.
  15. #
  16. # The $dir_config variable is automatically set to the directory 
  17. # named "config" in your MailShield directory. If you want to read files
  18. # from elsewhere, you can redefine the $dir_config variable, or point 
  19. # elsewhere.
  20. #
  21. ###########################################################################
  22.  
  23. # SMTP server
  24. $smtp_server = &ReadConfigFile($dir_config.'smtpserv.txt');
  25.  
  26. # TCP/IP addresses
  27. @bind = &FileToArray($dir_config.'tcpip.txt');
  28.  
  29. # Simultaneous connection limit
  30. $connection_limit = &ReadConfigFile($dir_config.'connects.txt');
  31.  
  32. # Disable reverse DNS lookups
  33. $disable_rvn = &ReadConfigFile($dir_config.'offrdns.txt');
  34.  
  35. # Syslog setting
  36. $syslog = &ReadConfigFile($dir_config.'syslog.txt');
  37.  
  38. # Large Message pass-through setting
  39. $large_passthrough = &ReadConfigFile($dir_config.'large.txt');
  40.  
  41. # DNS servers
  42. $dns_server = &ReadConfigFile($dir_config.'dns.txt');
  43.  
  44. # Admin email address
  45. $admin_email = &ReadConfigFile($dir_config.'admin.txt');
  46.  
  47. # Configuration reload check interval
  48. $check_interval = &ReadConfigFile($dir_config.'check.txt');
  49.  
  50. # TCP/IP addresses to allow relaying
  51. @relay_ok_tcpip = &FileToArray($dir_config.'okrelayt.txt');
  52.  
  53. # Hostnames to allow relaying
  54. @relay_ok_hostnames = &FileToArray($dir_config.'okrelayd.txt');
  55.  
  56. # Local domain names
  57. @local_domains = &FileToArray($dir_config.'localdom.txt');
  58.  
  59. # Domains to canonize
  60. @canonize = &FileToArray($dir_config.'canonize.txt');
  61.  
  62. # Hostnames to tarpit
  63. @tarpit_hostnames = &FileToArray($dir_config.'tarpitd.txt');
  64.  
  65. # TCP/IP addresses to tarpit
  66. @tarpit_addresses = &FileToArray($dir_config.'tarpitt.txt');
  67.  
  68. # Tarpit delay
  69. $tarpit_delay = &ReadConfigFile($dir_config.'tardelay.txt');
  70.  
  71. # Smtp receive port
  72. $smtp_receive_port = &ReadConfigFile($dir_config.'smtpport.txt');
  73.  
  74. # Mailshield activation code
  75. $serial = &ReadConfigFile($dir_config.'activate.txt');
  76.  
  77. # Log filename
  78. $logfile = &ReadConfigFile($dir_config.'logname.txt');
  79.     
  80. # Log how much information?
  81. $loglevel = &ReadConfigFile($dir_config.'loglevel.txt');
  82.     
  83. # Banned TCP/IP addresses
  84. @banned_tcpip = &FileToArray($dir_config.'bantcpip.txt');
  85.     
  86. # Banned domain names
  87. @banned_domains = &FileToArray($dir_config.'bandom.txt');
  88.     
  89. # Banned smtp helo text
  90. @banned_helo = &FileToArray($dir_config.'banhelo.txt');
  91.     
  92. # Require valid hostname for helo
  93. $require_helo_hostname = &ReadConfigFile($dir_config.'helohost.txt');
  94.  
  95. # Helpful refuse message
  96. $helpful_refuse_message = &ReadConfigFile($dir_config.'refushlp.txt');
  97.  
  98. # Approved smtp MAIL FROM:<> text
  99. @ok_mail_from = &FileToArray($dir_config.'okmailfr.txt');
  100.  
  101. # Banned smtp mail from text
  102. @banned_mail_from = &FileToArray($dir_config.'banmfrom.txt');
  103.     
  104. # Reject source routed mail from
  105. $reject_routed_email = &ReadConfigFile($dir_config.'rejsrc.txt');
  106.  
  107. # Dynamically check recipients
  108. $chk_rcpt = &ReadConfigFile($dir_config.'chkrcpt.txt');
  109.  
  110. # Reject invalid mail from
  111. $reject_invalid_mail_from = &ReadConfigFile($dir_config.'badmfrom.txt');
  112.  
  113. # Reject no hostname
  114. $reject_no_hostname = &ReadConfigFile($dir_config.'noname.txt');
  115.  
  116. # SMTP beginning text
  117. $begin_connection_message = &ReadConfigFile($dir_config.'begintxt.txt');
  118.  
  119. # Banned rcpt to
  120. @no_rcptto = &FileToArray($dir_config.'banrcpt.txt');
  121.  
  122. # Approved RCPT TO:<> text
  123. @ok_rcptto = &FileToArray($dir_config.'okrcptto.txt');
  124.  
  125. # Approved To: header text
  126. @ok_to = &FileToArray($dir_config.'okto.txt');
  127.  
  128. # Reject unauthorized relaying
  129. $reject_relaying = &ReadConfigFile($dir_config.'norelay.txt');
  130.  
  131. # Maximum number of rcpt to
  132. $max_rcpt_to = &ReadConfigFile($dir_config.'maxrcpt.txt');
  133.  
  134. # Maximum number of rcpt to before slighty tarpitting comes into effect
  135. $tarpit_rcpt_to_threshold = &ReadConfigFile($dir_config.'rcpttar.txt');
  136.  
  137. # Maximum Received: header line size
  138. $max_recv = &ReadConfigFile($dir_config.'maxrecv.txt');
  139.  
  140. # Banned FROM: header
  141. @banned_from = &FileToArray($dir_config.'banfrom.txt');
  142.  
  143. # Enable MailShield mail merge support
  144. $enable_mail_merge = &ReadConfigFile($dir_config.'mailmerg.txt');
  145.  
  146. # Reject no FROM: header
  147. $reject_no_from = &ReadConfigFile($dir_config.'nofrom.txt');
  148.  
  149. # Reject no SUBJECT: header
  150. $reject_no_subject = &ReadConfigFile($dir_config.'nosubj.txt');
  151.  
  152. # Reject no Date: header
  153. $reject_no_date = &ReadConfigFile($dir_config.'nodate.txt');
  154.  
  155. # Reject no TO: header
  156. $reject_no_to = &ReadConfigFile($dir_config.'noto.txt');
  157.  
  158. # Reject invalid FROM: header
  159. $reject_invalid_from = &ReadConfigFile($dir_config.'badfrom.txt');
  160.  
  161. # Reject invalid TO: header
  162. $reject_invalid_to = &ReadConfigFile($dir_config.'badto.txt');
  163.  
  164. # Reject empty MAIL FROM
  165. $reject_empty_mail_from = &ReadConfigFile($dir_config.'nomfrom.txt');
  166.  
  167. # Banned message text
  168. @banned_text = &FileToArray($dir_config.'bantext.txt');
  169.  
  170. # Banned header text
  171. @banned_header = &FileToArray($dir_config.'banhdr.txt');
  172.  
  173. # Banned received: header text
  174. @banned_recv = &FileToArray($dir_config.'banrecv.txt');
  175.  
  176. # Banned TO: text
  177. @banned_to = &FileToArray($dir_config.'banto.txt');
  178.     
  179. # Banned subject text
  180. @banned_subject = &FileToArray($dir_config.'bansubj.txt');
  181.     
  182. # Banned subject prefix text
  183. @banned_subject_prefix = &FileToArray($dir_config.'bansubjp.txt');
  184.     
  185. # Banned x-mailer text
  186. @banned_xmailer = &FileToArray($dir_config.'banxmail.txt');
  187.     
  188. # Banned MIME filename text
  189. @banned_attachment_filenames = &FileToArray($dir_config.'banfname.txt');
  190.     
  191. # Maximum message size
  192. $max_message_size = &ReadConfigFile($dir_config.'maxsize.txt');
  193.  
  194. # Maximum message lines
  195. $max_message_lines = &ReadConfigFile($dir_config.'maxlines.txt');
  196.  
  197. # Maximum attachment filename size (in characters)
  198. $max_attachment_filename_length = &ReadConfigFile($dir_config.'maxflen.txt');
  199.  
  200. # Maximum recipients
  201. $max_recipients = &ReadConfigFile($dir_config.'maxrecip.txt');
  202.  
  203. # Detect HELO field tampering in the Received header line
  204. # feature is disabled until is more thoroughly tested
  205. #$helo_tampering = &ReadConfigFile($dir_config.'helotamp.txt');
  206.  
  207. # Reject forged date header
  208. $reject_forged_date_header = &ReadConfigFile($dir_config.'rejfdate.txt');
  209.  
  210. # Reject forged message id header
  211. $reject_forged_message_id_header = &ReadConfigFile($dir_config.'rejfid.txt');
  212.  
  213. # Slow down messages with many recipients
  214. $slow_threshold = &ReadConfigFile($dir_config.'slowdown.txt');
  215.  
  216. # Block messages with blank MAIL FROM and more than one recipient specified
  217. $onercpt = &ReadConfigFile($dir_config.'onercpt.txt');
  218.  
  219. # Realtime Blackhole List (RBL)
  220. $use_rbl = &ReadConfigFile($dir_config.'rbl.txt');
  221.  
  222. # Open Relay Blocking System (ORBS)
  223. # Curently disabled because ORBS is now offline, as of 12/1/98
  224. $use_orbs = &ReadConfigFile($dir_config.'orbs.txt');
  225.  
  226. # MAPS Relay Spam Stopper (RSS)
  227. $use_rss = &ReadConfigFile($dir_config.'rss.txt');
  228.  
  229. # Dialup User List (DUL)
  230. $use_dul = &ReadConfigFile($dir_config.'dul.txt');
  231.  
  232. # RBL+ Master Service
  233. $use_rbl_plus = &ReadConfigFile($dir_config.'rbl-plus.txt');
  234.  
  235. # Append helpful SMTP information
  236. $append_smtp_info = &ReadConfigFile($dir_config.'smtpinfo.txt');
  237.  
  238. # Forward rejected mail to email address
  239. $receive_suspicious_email = &ReadConfigFile($dir_config.'forwmail.txt');
  240.  
  241. # Backup mail server
  242. $backup_mail_server = &ReadConfigFile($dir_config.'backmail.txt');
  243.  
  244. # Mark subject instead of refusing
  245. $mark_subject = &ReadConfigFile($dir_config.'marksubj.txt');
  246.  
  247. # Port on which the Tcl Web server is running
  248. $web_port = &ReadConfigFile($dir_config.'webport.txt');
  249.  
  250. # Tcp/ip address where the web server is installed
  251. $web_tcpip = &ReadConfigFile($dir_config.'webtcpip.txt');
  252.  
  253. # END OF SETTINGS 
  254.  
  255.  
  256. ###########################################################################
  257. # SMTP rules
  258. # Defines the script that is run at each step of the SMTP transaction.
  259. # This is where the anti-spam and anti-mail-bomb settings are configured.
  260. # You can specify a script directly into the variable, or read a file
  261. # into a variable by using &ReadFile();
  262. #
  263. # Note: the $dir_rules variable is automatically set to the directory 
  264. # named "rules" in your MailShield directory. If you want to read files
  265. # from elsewhere, you can redefine the $dir_rules variable, or point 
  266. # elsewhere.
  267. #
  268. $smtp_rule{'connection_begins'}     = &ReadFile($dir_rules.'begin.mml');
  269. $smtp_rule{'after_helo'}            = &ReadFile($dir_rules.'helo.mml');
  270. $smtp_rule{'after_mail_from'}       = &ReadFile($dir_rules.'mailfrom.mml');
  271. $smtp_rule{'after_rcpt_to'}         = &ReadFile($dir_rules.'rcptto.mml');
  272. $smtp_rule{'after_data'}            = &ReadFile($dir_rules.'user.mml').&ReadFile($dir_rules.'data.mml');
  273.  
  274.  
  275. ###########################################################################
  276. # Standards file
  277. #
  278. # This is the standard definitions file, which contains subroutines
  279. # commonly used in MailShield, such as the Default Rejection procedure.
  280.  
  281. require $dir_rules."standard.mml";
  282.  
  283.  
  284.  
  285. ###########################################################################
  286. #
  287. # Note, these variables are defined by MailShield when later scripts run:
  288. #
  289. # $PeerTcpip    - the TCP/IP address of the host connected to us
  290. # $PeerHostname - the Internet hostname of the host connected to us
  291. # $MyHostname   - the Internet hostname address of this machine
  292. # $MyTcpip      - the TCP/IP address of this machine
  293. # $SmtpHelo     - the value passed to us by the SMTP "HELO" command
  294. # $SmtpMailFrom - the value passed to us by the SMTP "MAIL FROM" command
  295. # $SmtpRcptTo   - the value passed to us by the most recent SMTP "RCPT TO" command
  296. # @SmtpRcptTo   - all the values so far passed to us by the SMTP "RCPT TO" command
  297. # $SmtpData     - the value passed to us by the SMTP "DATA" command (this is the message header and body) [removed in v1.1]
  298. # @Data         - the value passed to us by the SMTP "DATA" command (this is the message header and body), 
  299. #                 with each line of the message as an array element. This is what is actually sent.  [removed in v1.1]
  300. # $Body         - the body text portion of the current message [removed in v1.1]
  301. # $Header       - the header text portion of the current message
  302. # $DataBytes    - the byte size of the DATA portion of the current message
  303. # $DataLines    - the number of individual lines in the DATA portion of the current message
  304. #
  305. ###########################################################################
  306.  
  307.  
  308.